export type Position = {
    y: number;
    z: number;
    x: number;
};

export type LonLatBoundingBox = {
    centerY: number;
    centerZ: number;
    minY: number;
    minX: number;
    maxZ: number;
    centerX: number;
    maxY: number;
    maxX: number;
    minZ: number;
};

export type TileServiceInfoType = {
    [x: string]: any;
    "schema": string,
    "lonLatboundingbox": LonLatBoundingBox,
    "lonLatPosition": Position,
    "zoom0Size": number,
    "boundingbox": LonLatBoundingBox,
    "storageParam": string,
    "createdAt": number,
    "projH": number,
    "srs": string,
    "name": string,
    "storageType": string,
    "position": Position,
    "id": string,
    "updatedAt": number,
    "serverUrl": string,
}

export type MenuContentType = {
    type?: 'normal'
    text: string;
    keys: string;
    func: () => void;
  } | {
    type: "divider",
  }

  export type ApplyType = {
    "thumbnail": null | string,
    "name": string,
    "id": string
  }
  export type menuContentType = {
    text: string;
    keys: string;
    func: () => void;
  } | {
    type: "divider",
  }

  export type MenuItem = {
    id?: string;
    type?: string;
    name?: string;
    com?: any;
    status?: string;
    icon?: any;
    activeIcon?: any;
    hoverIcon?: any;
    isOnly?: boolean;

}
